Method and Apparatus for Heart Rate Monitoring

ABSTRACT

A method and apparatus for monitoring heart rate. The method includes receiving a digital heart monitoring signal, determining the integrity of said signal with a “hand detect” signal that confirms electrical connection to the subject, dividing the digital heart monitoring signal into at least one frame, generating a folded correlation value for the center sample in the at least one frame, identify the number of peaks folded correlation values based on amplitude and distance parameters of the digital heart monitoring signal in the at least one frame, removing false peaks and collecting peaks corresponding to a length of time, determining the heart rate based on the identified peaks wherein the identified peaks relate to a minimum distance between valid heart beat peaks based on a heart rate estimate, computing the weighted average of heart rate value based on the number of previous heart rate values.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.12/68,488, filed Apr. 27, 2010 (U.S. Pat. No. 9,808,163), which claimsbenefit of U.S. provisional patent application Ser. No. 61/174,291,filed Apr. 30, 2009, which are incorporated by reference in theirentirety.

BACKGROUND OF THE INVENTION Field of the Invention

Embodiments of the present invention generally relate to a method andapparatus for electrocardiogram (ECG) based rate detection. Morespecifically, the ECG based rate detector functions in real-time, is lowcomplexity and utilizes low-memory.

Description of the Related Art

Heart rate detection from electrocardiogram (ECG) signal has been wellstudied. Some methods proposed previously, detect the QRS complex peaksby high pass filtering and subtraction of a fixed threshold. Thismethod, though straight forward has the disadvantage that it is notrobust to variations in relative amplitude. Another technique proposesuse of discrete wavelet transform to remove mean variations and otherartifacts. The peaks corresponding to the R-waves are detected usingslope detection and thresholding. Some of the other signal processingchoices include adaptive filtering to remove artifacts, matchedfiltering to detect the QRS complex and frequency tracking.

SUMMARY OF THE INVENTION

Embodiments of the present invention relate to a method and apparatusfor monitoring a heart rate. The method includes receiving a digitalheart monitoring signal, dividing the digital heart monitoring signalinto at least one frame, generating a folded correlation value for thecenter sample in the at least one frame, identify the number of peaks ofthe folded correlation values based on amplitude and distance parametersof the digital heart monitoring signal in the at least one frame,removing false peaks and collecting peaks corresponding to a length oftime, determining the heart rate based on the identified peaks whereinthe identified peaks relate to a minimum distance between valid heartbeat peaks based on a heart rate estimate, computing the weightedaverage of heart rate value based on the number of previous heart ratevalues.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above recited features of the presentinvention can be understood in detail, a more particular description ofthe invention, briefly summarized above, may be had by reference toembodiments, some of which are illustrated in the appended drawings. Itis to be noted, however, that the appended drawings illustrate onlytypical embodiments of this invention and are therefore not to beconsidered limiting of its scope, for the invention may admit to otherequally effective embodiments.

FIG. 1 is an embodiment depicting a block diagram for a heart ratemonitoring system; and

FIG. 2 is a flow diagram depicting an embodiment of a method formonitoring a heart rate in accordance with the present invention.

DETAILED DESCRIPTION

FIG. 1 is an embodiment depicting a block diagram for a heart ratemonitoring system 100. The heart rate monitor system comprises anelectrocardiogram (ECG) 102, a Hand detect circuit 104, a filteringsignal conditioning unit 106, a data logging buffer 108, a processingunit 110, and an output display 112.

Herein, the proposed system 100 is a mixed analog and digital solution.The DC offset removal of the acquired signal is accomplished using asingle-pole analog high-pass filter, i.e., with a cutoff frequency of 7Hz. The signal is then passed through a low-pass filter with, i.e., a 27Hz cut-off frequency to remove out-of-band noise. The analog front-endalso provides sufficient gain to the acquired signal. The signal is thenprocessed by a CPU. In one embodiment, a block processing algorithmicapproach is utilized, which allows for a more efficient and accurateparadigm for heart rate detection from ECG 102. The approach also allowsus to perform back-end signal processing to increase robustness of theproposed method.

The compact version of the proposed solution may run on as little as 128bytes of RAM and 2 Kb of code space. In one embodiment, in the contextof a fitness equipment (such as a treadmill), a hardware circuit, suchas hand detect circuit 104, is utilized to detect the contact of thehand to the electrodes and generate a hand detect signal to gate thedata logging and to trigger the heart rate processing algorithm. Theanalog front-end also provides filtering and amplification of thesignal.

In one embodiment, the proposed system, unlike a sample-by-sampleapproach that uses thresholding or a similar approach to detect signalpeaks, incoming data is buffered into blocks. Peak detection isaccomplished by a simple maximum function. Further multiple blocks arethen processed to weed out possible false peaks.

In another embodiment, P and T-wave components of the ECG 102 signalthat may contribute to false peaks are removed using a differenceoperation. Further, the QRS peaks may be enhanced using a proprietarycorrelation based method.

In yet another embodiment, a time based approach may be used to correctfor any false peaks that might have slipped through the previous stages.The timing parameter maybe updated on a continuous basis to enabletracking of changes in the heart rate.

The system consists of a hardware circuit that detects the presence ofvalid data and enables data logging. The detection circuit consists of adual comparator with threshold voltage of, i.e., 410 mV. The output ofthe comparator is used to generate a pulse that begins or terminatesdata logging.

The signal path consists of a filtering and signal conditioning unit 106that may act as an amplifier to provide gain while rejecting line noisedue to its high common mode rejection, a high-pass filter for DC removaland a low-pass filter to reject high frequency noise. The signal is thenfed to a mixed signal microcontroller, i.e., MSP430. The algorithm forcomputing the heart rate is implemented in the microcontroller.

In the proposed system 100, incoming data maybe buffered into frames inbuffer 108. Each of these frames is subjected to a difference functionwhich removes the mean as well as low frequency components from thesignal. The frame is then processed, in processing unit 110. Theprocessing unit 110 may use a folded correlation method to enhance the Rpeaks. The resulting signal is then subjected to a maximum function,which may pick peaks within each frame. Peaks over 5 seconds, forexample, are collected and subjected to post processing. During postprocessing, peaks with relatively small amplitudes and small distance(time) separation are discarded. In order to save memory the differenceof the peak locations are stored rather than the peaks locationsthemselves (the difference in peak location can be stored in a bytewhereas peak locations could potentially be of word length). A timingbased check is used to correct for any false peaks.

The heart rate obtained from the 5 second segment, for example, issubjected to a weighted average over the past, i.e., 4 heart ratevalues. The resulting value is the reported heart rate for last addedframe. The information pertaining to the oldest frame is discarded and anew frame is added to obtain the next estimate. The algorithm is capableof outputting heart rate values for every 1 second, for example. Theresulting signal may be displayed on output display 112 or stored forfuture display.

FIG. 2 is a flow diagram depicting an embodiment of a method 200 formonitoring a heart rate in accordance with the present invention. Themethod 200 starts at step 202 and proceeds to step 204. At step 204, themethod 200 receives a digital heart monitoring signal of a heartmonitoring samples. At step 206, the method divides the heart monitoringsamples into overlapping frames. At step 208, the method 200 may setparameters to prepare for step 210. Such parameters may include minimumdistance between valid heart beat peaks based on the current estimate ofthe heart rate value. At step 210, the method 200 may utilize theparameters of step 208 to fold the heart monitoring samples in frames togenerate a folded correlation value for the center sample in the frame.At step 212, the method 200 identifies peaks. For example, the method200 may identify a predetermined number of peaks of folded correlationvalues based on amplitude and distance parameters. At step 214, themethod 200 removes false peaks and collects peaks corresponding to alength of time, which maybe predetermined. At step 216, the method 200determines the heart rate based on the identified peaks. At step 218,the method 200 computes weighted average of heart rate value based onpredetermined number of previous heart rate values. At step 220, themethod 200 determines if more processing is required. If more processingis required, the method 200 proceeds to step 222 to re-computeparameters based on heart rate and proceeds to step 208. Otherwise, atstep 224, the method 200 restricts the amount of change in the new heartrate value based on a predetermined timer. The method proceeds to step226, wherein the method 200 ends.

In one embodiment, the hand detect is used to start or stop datalogging, and/or reinitialize the processor unit and instrumentationamplifier to fixed initial values. This provides a convenient resetmechanism and more accurate response when the subject's ECG signal isremoved and reapplied. In another embodiment, a timer is set todetermine the change in the current heart rate value. For example,initially the heart rate value maybe allowed to change more rapidly tominimize the settling time. After the expiration of the timer, the heartrate values maybe allowed to change less rapidly. In some embodiment, asecond timer is utilized to allow for the heart rate to settle beforeusing the heart rate value to set parameters.

While the foregoing is directed to embodiments of the present invention,other and further embodiments of the invention may be devised withoutdeparting from the basic scope thereof, and the scope thereof isdetermined by the claims that follow.

What is claimed is:
 1. A method for monitoring a heart rate, comprising:receiving ECG (electrocardiogram) signals; converting the ECG signals toa digital heart monitoring signal as a sequence of heart monitoringsamples; receiving at a processor the digital heart monitoring signal;dividing the digital heart monitoring signal into successive overlappingframes, each with an odd number N of samples, and each frameencompassing multiple heart beats; setting amplitude and distanceparameters, the distance parameter corresponding to a minimum distancebetween valid heart beat peaks based on a current estimate of heartrate; processing a current frame to determine a current heart rate usingthe amplitude and distance parameters by: generating folded correlationvalues based on a folded correlation of (N−1)/2 samples preceding acenter sample, and time-reversed (N−1)/2 samples following the centersample; identifying a number of peaks using the folded correlationvalues, including removing false peaks using the amplitude parameter,and removing false peaks using the distance parameter corresponding to alength of time between valid heart beat peaks; determining the currentheart rate based on the identified peaks using at least the distanceparameter; selectively updating at least the distance parameter inpreparation for processing a next frame; and generating heart ratesignals corresponding to the determined current heart rate.
 2. Themethod of claim 1, further comprising: selectively updating theamplitude parameter in preparation for processing the next frame.
 3. Themethod of claim 1, further comprising: computing a weighted averageheart rate based on a predetermined number of previous heart rates, eachcomputed from a respective frame.
 4. The method of claim 1, furthercomprising: restricting a change in heart rate from the current frame tothe next frame based on a predetermined timer.
 5. An apparatus formonitoring a heart rate, comprising: means for receiving ECG(electrocardiogram) signals; means for converting the ECG signals to adigital heart monitoring signal as a sequence of heart monitoringsamples; processing means for processing the digital heart monitoringsignal, by: means for dividing the digital heart monitoring signal intosuccessive overlapping frames, each with an odd number N of samples, andeach frame encompassing multiple heart beats; setting amplitude anddistance parameters, the distance parameter corresponding to a minimumdistance between valid heart beat peaks based on a current estimate ofheart rate; means for processing a current frame to determine a currentheart rate using the amplitude and distance parameters, includinggenerating folded correlation values based on a folded correlation of(N−1)/2 samples preceding a center sample, and time-reversed (N−1)/2samples following the center sample; identifying a number of peaks usingthe folded correlation values, including removing false peaks using theamplitude parameter, and removing false peaks using the distanceparameter corresponding to a length of time between valid heart beatpeaks; determining the current heart rate based on the identified peaksusing at least the distance parameter; selectively updating at least thedistance parameter in preparation for processing a next frame; andgenerating heart rate signals corresponding to the determined currentheart rate.
 6. The apparatus of claim 5, the processing means furtheroperable to: selectively update the amplitude parameter in preparationfor processing the next frame.
 7. The apparatus of claim 5, theprocessing means further operable to: compute a weighted average heartrate based on a predetermined number of previous heart rates, eachcomputed from a respective frame.
 8. The apparatus of claim 5, theprocessing means further operable to: restrict a change in heart ratefrom the current frame to the next frame based on a predetermined timer.